Broadcast programming guide

ABSTRACT

A system and method for generating a broadcast programming guide. Based on either designation by or a habit of a user, a programming guide comprising one or more favorite channels of the user is created by a microcomputer of a receiver. The programming guide comprises programming information. Preferably, the programming information is obtained from one or more external sources. The programming guide preferably also comprises one or more suggested channels based on the favorite channels. The programming guide is presented to the user when the receiver is powered on or when the programming guide is requested by the user.

BACKGROUND

1. Field of the Invention

The present invention relates to entertainment systems, and moreparticularly, to a system and method for generating a television (TV)programming guide.

2. Background of the Invention

With cable and satellite TV technologies, a TV set can receive broadcastsignals through hundreds of channels. A TV set “tunes in” to a channelselected by a viewer. For TV sets that have two tuners, a viewer can seea first program of a first channel in the monitor and a second programof a second channel in a smaller “window” within the same monitor. Eachtuner is typically controlled by the viewer using a remote control unit.

“Channel surfing” involves a viewer tuning in to a first channel,quickly determining whether he or she wishes to watch the program of thefirst channel, and tuning in to a second channel. The process repeatsfor additional channels. With hundreds of channels available forsurfing, it can take the viewer a long time to find a desirable program.Channel surfing is often performed by the user by repeatedly pressingone of the “Channel Up” and the “Channel Down” buttons on the remotecontrol unit.

Recognizing that channel surfing is time consuming, a number ofsolutions have been offered by TV set manufacturers. One solution is tomake the remote control unit programmable. A user of a programmableremote control unit can designate certain channels as his or her“favorite” or “frequently watched” channels. One example of thissolution is to program the “Channel Up” button and the “Channel Down”button so that when one of them is pressed, only those channelspreviously designated as “favorite” will be tuned in. For example, whena viewer presses the “Channel Up” button repeatedly, instead ofsequentially tuning in to Channels 1, 2, 3, 4, 5, 6, 7, etc., thesolution enables to viewer to scan only Channels 2, 4, and 7, assumingthat these three channels have been designated by the viewer to be his“favorite” or “frequently watched” channels.

Additional efforts have been made to help viewers navigate throughhundreds of TV channels without requiring them to affirmatively programthe remote control unit or the TV set itself.

For example, U.S. Pat. No. 5,585,865 issued to Amano et al. (“The AmanoPatent”) on Dec. 17, 1996, discloses a “television broadcast receiverwhich selects programs by genre and past viewing habits.” When an Amanoreceiver receives a genre code from a user, the receiver tunes in thechannel that has a past record of highest frequency of reception amongall channels that are associated with the genre code. The Amano Patentis incorporated herein by reference in its entirety.

U.S. Pat. No. 5,734,444 issued to Yoshinobu (“The Yoshinobu Patent”) onMay 31, 1998, discloses a “broadcast receiving apparatus thatautomatically records frequency [sic] watched programs.” The Yoshinobuapparatus automatically records a user's frequently tuned in programmingwhen the user is not watching the programming at the day and time whenthe user is expected to tune in to the channel. The Yoshinobu Patent isincorporated herein by reference in its entirety.

U.S. Pat. No. 5,945,988 issued to Williams et al. (“The WilliamsPatent”) on Aug. 31, 1999, discloses a “method and apparatus forautomatically determining and dynamically updating user preferences inan entertainment system.” The Williams invention monitors a user'sinteraction with an entertainment system. Based on the interaction, theinvention can automatically determine which of a plurality of users iscurrently using the entertainment system. The Williams Patent isincorporated herein by reference in its entirety.

U.S. Pat. No. 6,128,009 issued to Ohkura et al. (“The Ohkura Patent”) onOct. 3, 2000, discloses a “Program guide controller.” In this invention,programs of high viewing frequency of a user are automaticallyregistered, permitting registered programs to be included in genreinformation. The Ohkura Patent is incorporated herein by reference inits entirety.

SUMMARY OF THE INVENTION

The present invention is a system and method for generating a broadcastprogramming guide. One embodiment of the present invention is abroadcast signals receiver that contains a tuner, a microcomputer, amemory, and an output device. The tuner is adapted to select a specificchannel out of many that are broadcast by stations. The microcomputer isadapted to monitor activities of the tuner. The microcomputer stores theresult of monitoring in the memory. After a suitable time period ofmonitoring, the microcomputer generates a programming guide based atleast in part on the result. Preferably, the programming guide containsprogramming information obtained from one or more external sources.After the programming guide is generated and when the receiver ispowered on or when the programming guide is requested by a user of thereceiver, the programming guide is reproduced on the output device.Reproduction can be an audio output by a speaker or a video display by amonitor, or both, depending on the type of output device equipped withthe receiver.

One method for generating the programming guide involves the followingsteps. First, one or more favorite channels are recognized by thereceiver based on how the tuner has been controlled by a user over apredetermined period of time. In other words, the habit of the userduring that time period is interpreted by the microcomputer to determinewhich are his or her favorite channels. Alternatively, the user maydesignate the favorite channels by directly inputting them in the memoryof the receiver.

Second, the microcomputer of a preferred embodiment, via a modem,retrieves programming information for the favorite channels from one ormore external sources. The external sources may be, for example, hostcomputers or web sites of broadcast stations or other entities thatprovide broadcast programming information. Third, the microcomputergenerates a programming guide based on the favorite channels and theprogramming information. Finally, the programming guide is reproduced byan output device of the receiver when the receiver is powered on or whenthe programming guide is requested by the user.

In one embodiment in which the present invention is incorporated in a TVset that has access to multiple channels, the invention can generate ashort list of suggested channels for the television user. In onespecific implementation of the present invention, the viewer's habit forusing the television can be used to cull a list of suggested channelsout of a substantially larger number of available channels. For example,in accordance with one aspect of the present invention, after the viewerhas used his television set for a period of, e.g., three weeks, theshort list can comprise four suggested channels out of 400 availablechannels. The first two suggested channels may be, for example, theviewer's most frequently watched channels. Each of the next twosuggested channels may be, for example, a channel similar to one of thefirst two channels, but that which has not been tuned in by the viewerin the past. A number of criteria can be used to generate the list ofsuggested channels.

Accordingly, none of the prior art references, standing alone or incombination, teaches a system and method that would provide a user of aTV set, or other broadcast program receivers, a customized programmingguide in accordance with the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a receiver according to anembodiment of the present invention.

FIG. 2 is a flowchart illustrating exemplary steps involved ingenerating a programming guide in accordance with one embodiment of thepresent invention.

FIG. 3 is a flowchart illustrating exemplary steps involved indynamically generating a programming guide in accordance with anotherembodiment of the present invention.

FIG. 4 is a flowchart illustrating exemplary steps involved in using oneembodiment of the present invention.

FIG. 5 is a flowchart illustrating exemplary steps involved in usinganother embodiment of the present invention.

FIG. 6 is a flowchart illustrating exemplary steps involved in using yetanother embodiment of the present invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

FIG. 1 is a block diagram illustrating receiver 100 according to anembodiment of the present invention. It is noted that receiver 100 canbe a TV set, a radio receiver, a video cassette recorder, a cable TV orsatellite TV set top box, or other similar devices that can receive andprocess broadcast signals in multiple channels. For discussion purposes,the exemplary receiver depicted in FIG. 1 is a TV set.

Antenna 102 of receiver 100 is adapted to receive broadcast signals 101that are transmitted by one or more TV stations (not shown). Antenna 102supplies broadcast signals 101 to tuner 104. Amplifier 106, audio signalprocessor 110, and video signal processor 120 process these signals foroutput by speaker 114 and for display on monitor 124. One or more of thepatents that have been incorporated by reference disclose a system andmethod for receiving and reproducing broadcast signals.

For cable TV programming, tuner 104 can be adapted to received broadcastsignals 101 from a cable TV programs provider via a cable (not shown).Similarly, for satellite TV programming, tuner 104 can be adapted toreceive broadcast signals 101 from a satellite through a satellite dishand a cable (not shown).

Microcomputer 130 is in communication with tuner 104. Microcomputer 130can process information related to tuner 104 and store the informationin memory 132. In addition, microcomputer 130 can retrieve theinformation from memory 132 to operate or control tuner 104.

Microcomputer 130 is in communication with user signal receiver 140.User signal receiver 140 is adapted to receive user signals 141comprising a user's input. For example, in one embodiment, user signalreceiver 140 can be a remote control signal receiver that is adapted toreceive a signal generated by a remote control unit (not shown). Inanother embodiment, user signal receiver 140 can be adapted to receiveelectrical or electronic signals generated by the user using othermethods. For example, user signal receiver 140 can be adapted toreceiver user signals 141 from an input device (not shown) connected toreceiver 100. The input device may be a keyboard, a mouse, a track ball,or another similar device. User signals 141 received from the user canalso be stored in memory 132.

Microcomputer 130 is also in communication with character generator 150and sound generator 160. Character generator 150 can be instructed bymicrocomputer 130 to generate characters. The characters generated canthen be added to a video signal by adder 152 for display on monitor 124or another output device. Similarly, sound generator 160 can beinstructed by microcomputer 130 to generate sound to be mixed by adder162 for output by speaker 114. Speaker 114 and monitor 124 are two typesof output devices. An audio switch (not shown) and a video switch (notshown) that are controlled by microcomputer 130 can be used to selectwhether outputs of sound generator 160 and character generator 150should be reproduced by speaker 114 and monitor 124, respectively.

Furthermore, microcomputer 130 can be adapted to receive informationfrom a number of external sources. For example, microcomputer 130 can beadapted to have access to computer network 190. Preferably, computernetwork 190 is the Internet, from which microcomputer 130 can obtainspecific information as explained below. In other embodiments, computernetwork 190 can be a local area network or a wide area network. Forexample, information available at external sources 182 can be obtainedby microcomputer 130 via modem 170 and computer network 190. Externalsources 182 can be, for example, host computers or web sites associatedwith broadcast stations. External sources 182 may also be other entitiesthat provide programming information for broadcast signal receivers.

FIG. 2 is a flowchart illustrating exemplary steps involved ingenerating a programming guide for a TV set in accordance with oneembodiment of the invention.

In optional step 202, memory 132 of receiver 100 is preloaded withpreliminary channel information. The preliminary channel information canbe supplied by a manufacturer or vendor of receiver 100. For example, ifreceiver 100 is designed for a user or purchaser in a specificgeographic market, memory 132 may be preloaded with information relatedto broadcast programs that are receivable by receiver 100 in thatmarket. In one specific implementation of the present invention, forexample, the preliminary channel information stored in memory 132 caninclude the information shown in Table 1 below.

TABLE 1 Preliminary Channel Information Channel Station Network Address14 WNBC www.wnbc.com 17 WABC www.wabc.com 19 WCBS www.wnbc.com

Information contained in the left column of Table 1 represents thenumeric channel designations that are associated with specific broadcastfrequencies. In Table 1 shown above, for example, Channels 14, 17, and19 are associated with Stations WNBC, WABC, and WCBS, respectively, asindicated in the middle column. Each of these stations is alsoassociated with a network address, which is shown in the right column ofTable 1. In an example in which computer network 190 uses TCP/IP, thenetwork addresses for the stations can be uniform resource locators(URL). It is noted that Table 1 can contain information related tohundreds of channels.

Step 202 is optional. However, regardless of whether memory 132 has beenpreloaded with the preliminary channel information in step 202, at thestart of the process memory 132 does not contain any user specificinformation.

In step 204, when a user brings home the TV set, the user can decidewhether or not to supplement memory 132 with user-specific information.The supplemental user-specific information may comprise, for example, ashort list of the user's favorite channels. For example, as the userchannel surfs, the user may designate one or more channels as his or herfavorite channels. Designation of favorite channels may be accomplishedby pressing a specific button on the TV set or its remote control unit.For illustration purposes, assume that memory 132 were preloaded withTable 1 above. In addition, assume further than the user adopts two ofthe channels in Table 1 as his or her favorite channels, and the userdesignates two additional channels as his or her favorite channels. Asexplained below in a different embodiment (see FIG. 3) of the presentinvention, designation of the user's favorite channels can be donedynamically.

In step 206, receiver 100 stores the data created in step 204 in memory132. At the conclusion of step 206, Table 1 may be modified or updatedbased on the example and assumption discussed above, to become Table 2shown below.

TABLE 2 User-Specific Channels Channel Station Network Address 14 WNBCwww.wnbc.com 17 WABC www.wabc.com 21 WGAM www.sportngames.com 23 WPUBwww.localpbs.com

In step 208, microcomputer 130 retrieves programming schedule for eachchannel listed in Table 2. The programming schedules may be retrievedfrom memory 132 or directly from external sources 182.

Preferably, once a day and at a specific time of the day, for example,at 12:01 am (or at other time), microcomputer 130, in step 252, reviewsdata in memory 132 to determine what information it has and whatadditional details it needs from external sources 182.

In step 254, microcomputer 130 establishes a data communication sessionwith computer network 190 via modem 170. The data communication sessionmay be accomplished in one of several ways. For example, the session maybe established using a conventional telephone line, a digital subscriberline, or other known methods.

During the data communication session, in step 256, microcomputer 130contacts external sources 182 that are associated with the stationslisted in Table 2. External sources 182 can be one or more hostcomputers or web sites of the stations listed in Table 2. Externalsources 182 may also be associated with an entity that providesbroadcast programming guides for a plurality of broadcast stationsincluding those listed in Table 2.

In step 258, microcomputer 130 obtains daily programming schedules fromexternal sources 182. In step 260, microcomputer 130 updates memory 132with the daily programming schedules obtained in step 258.

It is noted that steps 252 through 260 may be optional, they may beperformed more than once for a particular day, or they may be performedonce every few days.

In step 210, information obtained in step 208 can be used by receiver100 to generate a programming guide or a channel guide. Table 3 below isone example of a programming guide.

TABLE 3 User-Specific Programming guide Channel 7 pm 8 pm 9 pm 14 MovieNews 17 Sitcom Talk Show News 21 Tennis Golf Football 23 HistoryBiography

Table 3 shown above represents one of many different ways that can beused to organize the information generated in step 210. As shown above,the guide shows the programming of the user's favorite channels for athree-hours period when receiver 100 is expected to be powered on. Ifthe user were to receive the guide at 9 pm, however, the guide mightappear as Table 4.

TABLE 4 User-Specific Programming guide Channel 9 pm 10 pm 11 pm 14 NewsTravel Guide Talk Show 17 News Movies 21 Football Hockey 23 BiographyHome & Garden Show

It is noted that Tables 3 and 4 can be presented in different formats.For example, the user-specific programming guide can contain schedulinginformation for more than three hours. In another example, theuser-specific programming guide can be scrolled down automatically or bythe user to reveal more information. Note that the user-specificprogramming guide, such as that shown in Table 3 or Table 4, issignificantly shorter than a typical programming guide that takes a longtime to browse.

In step 212, memory 132 is updated with information generated in step210.

In accordance with the embodiment shown above, each time the user powerson receiver 100 after step 212 or otherwise requests a programmingguide, depending on the time of day, a variation of Table 3 or Table 4would appear. The user can then select one of the channels that appearson the suggested list. In the specific example described above, theinvention allows the user to browse his or her specific programmingguide that comprises four favorite channels, effectively avoidingbrowsing information related to hundreds of other channels that are notof interest to the user.

FIG. 3 is a flowchart illustrating exemplary steps involving indynamically generating a TV programming guide for a user. In thisembodiment, microcomputer 130 is adapted to monitor the activities oftuner 104.

In optional step 302, as in step 202, memory 132 of receiver 100 can bepreloaded with preliminary channel information.

In step 304, as the user tunes in to different channels using tuner 104at different times, microcomputer 130 stores in memory 132 informationrelated to how tuner 104 is used or controlled by the user. For example,the information can be related to which channel was tuned in, for howlong, and on what day.

In step 306, receiver 100, through microcomputer 130, memory 132, andtuner 104 monitors the user's interaction with respect to, for example,what channels the user tunes in, at what time, and on what day. After asuitable amount of time specified in step 306 has passed, receiver 100can use the information collected in steps 304-306 to generate aprogramming guide and store it in memory 132. The amount of time can be,for example, two weeks. The amount of time can also be longer, forexample, four weeks.

In one specific instance, assume that the user, for a period of fourweeks, consistently tunes in to channel 26 between the hours of 6:30 pmand 7:00 pm every Monday, Tuesday, Wednesday, Thursday, and Friday. Inthis example, microcomputer 130 may be adapted to interpret that eachtime the user powers on receiver 100 between 6:30 pm and 7:00 pm on aweek night, the user would want to view the program being broadcast onchannel 26. Accordingly, it may be said that the user has a habit ofviewing the program on channel 26 every weekday within that 30 minutetime period. Similarly, further assume that the same or a different userconsistently tunes in to Channel 7 on weekdays between 3:00 pm and 4:00pm. In that respect, if receiver 100 is powered on during that timeperiod on a weekday, receiver 100 assumes that the user would want totune in to channel 7.

Accordingly, in step 308, microcomputer 130 may create a new table andstore the table in memory 132. The new table may comprise, for example,information shown in Table 5 below.

TABLE 5 User's Viewing Habits Day of Week Time of Day ChannelMonday-Friday 3:00 pm-5:00 pm  7 Monday-Friday 6:30 pm to 7:00 pm 26

Thus, each time the user powers on receiver 100 or otherwise requestsfor a programming guide after step 308, a user-specific programmingguide can be provided based on information stored in memory 132. Forexample, when the user powers on receiver 100, Table 6 below may appearon monitor 124 as follows.

TABLE 6 User-Specific Programming guide Please Pick One of Your FavoriteChannels  7 26

Table 6 may be presented in different ways. For example, Table 7 may bepresented when receiver 100 is powered on at 2:50 pm on a weekday.

TABLE 7 Programming guide on Weekdays Your Favorite Programs AreScheduled to Be Broadcast At 3 pm on Channel 7 At 6:30 pm on Channel 26

In addition, microcomputer 130 may be programmed to tune in to theuser's favorite channel directly, without offering the programming guidefirst. For example, if the user were to power on receiver 100 between 3pm and 4 pm, microcomputer 130 tunes in to Channel 7 directly withoutproviding any programming guide.

Table 8 represents an exemplary programming guide that can be displayedon monitor 124 when receiver 100 is powered on or when the programmingguide is requested at a time when there is no favorite channelavailable. For example, no favorite channels for the users have beenestablished for Saturdays and Sundays.

TABLE 8 Programming guide on Weekends Your Favorite Channels Are Channel7 For weekdays between 3 and 4 pm Channel 26 For weekdays between 6:30pm and 7:00 pm May We Also Suggest Channel 107 Which broadcasts programssimilar to that you like on Channel 7 Channel 126 Which is affiliatedwith Channel 26

Table 8 contains a list of four channels, two of which were a product ofsteps 304 through 308. Specifically, channels 7 and 26 are included inTable 8 based on information collected in steps 304 through 308.Channels 107 and 126 may be created, for example, in steps 310 through314 described below.

In step 310, microcomputer 130 can be adapted to obtain additionalinformation related to a habit of the user that was established in steps304-308. The additional information can be obtained, for example, fromexternal sources that are accessible via computer network 190. Forexample, from one or more external sources 182 via computer network 190,microcomputer 130 can obtain specific information about the favoriteprograms of the user. Specifically, from an external source that isassociated with Channel 7, it may be determined that Channel 7broadcasts a popular soap opera between the hours of 3 pm and 4 pm onweekdays. Similarly, through the same or a different external source, itmay be determined that Channel 26 broadcasts financial news on weekdaysfrom 6:30 pm to 7:00 pm. Table 9 is an example of how such informationmay be stored in memory 132. The similar and additional information mayalso be derived from broadcast signals 101 through a filter or splitter(not shown) of receiver 100.

TABLE 9 Additional Information of Favorite Channels Day of Week Time ofDay Channel Genre Monday-Friday 3:00 pm-5:00 pm  7 Soap OperaMonday-Friday 6:30 pm to 7:00 pm 26 Financial News

In step 312, based on the information obtained in step 310,microcomputer 130 can be adapted to access the same or other externalsources via computer network 190 for similar programs. For example, itmay be determined that Channel 107 broadcasts old episodes of varioussoap operas all day long everyday. Similarly, it may be determined thatChannel 126 is affiliated with Channel 26 and specializes in financialnews reporting. Table 10 is an exemplary format of how such additionalinformation may be organized in memory 132.

TABLE 10 Additional Channels Similar to Favorite Channels FavoriteChannel Genre Also Suggest Channel 17 Soap Opera Channel 107 Channel 26Financial News Channel 126

In step 314, memory 132 is updated by microcomputer 130 with theinformation obtained and processed in steps 310 through 312. It is notedthat each of the favorite channels can have more than one suggestedchannel associated with it.

Optionally, microcomputer 130 can be adapted to obtain additionalinformation from the user in step 313. For example, the user can inputhis or her name in step 313. Memory 132 can be updated in step 314,resulting in, for example, Table 11 below.

TABLE 11 Programming Guide for Smith Family Day of Time of Week DayChannel Type of Content User Monday- 3:00 pm-  7 Soap Opera Gary SmithFriday 5:00 pm Monday- 6:30 pm to 26 Business News Tammy Smith Friday7:00 pm

FIG. 4 is a flowchart illustrating exemplary steps involved in using oneembodiment of the present invention.

In step 402, receiver 100 is powered on.

In step 404, microcomputer 130 reviews the information contained inmemory 132.

In step 406, microcomputer 130 instructs tuner 104 to display aprogramming guide as discussed above or tune in to a default channel.The default channel can be one of several channels, as specified by themanufacturer or by the user. The default channel can be, for example,the last channel tuned in to during the previous viewing session. Thedefault channel may be, alternatively, the most frequently tuned inchannel at that time and day. In step 406, one of the tables shownabove, or a variation thereof, may be displayed on monitor 124 as ashort list of suggested channels.

In step 408, receiver 100 stays tuned to the channel previously selectedunless the user interrupts in step 410.

In step 410, the user may interrupt by doing one of several things.First, the user may press a specific button to tune in a specificchannel associated with the specific button. Second, the user may pressthe “channel up” or the “channel down” button to view a differentchannel. If the user interrupts, the process goes to step 412;otherwise, the process goes to step 416.

In step 412, microcomputer 130 tunes in to the channel selected by theuser in step 410. In step 414, unless receiver 100 is powered off, theprocess returns to step 408.

In step 416, microprocessor 130 continues to review the contents ofmemory 132. If it is time for a favorite program, microprocessor 130notifies the user in step 422. Otherwise, the process proceeds to step418 and stays tuned in to the channel. Depending on whether receiver 100is powered off in step 420, the process returns to step 408 or ends.

In step 422, after determining in step 416 that a favorite program isabout to start, microprocessor 130 notifies the user that it is time fora favorite program. Microprocessor 130 can be adapted to notify the userin one of several ways. For example, a pop-up window may come up tonotify the user that a favorite program is about to be broadcast inanother channel. Alternatively, microprocessor 130 can run a banneracross the screen to notify the user. Still, sound generator 160, adder162, and speaker 114 can be used to notify the user by sound.

In step 424, microcomputer 130 awaits the user's respond to thenotification. If the user agrees to switch, the process goes to step426, otherwise, the process goes to step 408.

In step 426, microcomputer 130 tunes in to the favorite channel. Whenthe program of the favorite channel has concluded, the process returnsto step 408.

FIG. 5 is a flowchart illustrating exemplary steps involved in usinganother embodiment of the present invention.

In step 502, receiver 300 is powered on.

In step 504, microcomputer 130 determines identity of the user. Thisstep can be preformed using any known methods, including those disclosedin the patents incorporated by reference.

In step 506, microcomputer 130 reviews the information related to theuser in memory 132.

In step 508, microcomputer 130 suggests a number of favorite channelsthat are specific to the user. For example, if the user is Gary Smith,then only Gary's favorite channels would be suggested by receiver 100.Preferably, the number is between about three and about five channels.The list of suggested channels (the programming guide) can be based onthe frequency of the channels viewed within, for example, the previoustwo weeks. The programming guide can also be generated using othermethod and criteria.

In step 510, if the user picks one of the suggested channels, theprocess goes to step 512. If the user does not pick any of the channels,the process goes to step 518.

In step 512, microcomputer 130 receives the response and instructs tuner104 to tune in to the channel selected by the user in step 510.

In step 514, receiver 100 stays tuned to the channel.

In step 516, unless receiver 100 is powered off, the process goes tostep 524.

In step 518, microcomputer 100 instructs tuner 104 to tune in to one ofthe favorite channels on the programming guide. Tuner 104 may tune in tothe channel that has the most frequency of viewing in the past.

In step 520, if the user disagrees with the selection, the process goesto step 510.

If the user agrees with or does not object to the selection in step 520,the process goes to step 522.

In step 522, receiver 100 stays tuned to the channel tuned in step 518.

In step 524, microcomputer 130 determines whether there is an overridingfactor. An overriding factor can be, for example, a show time foranother favorite channel has arrived, and if so, the process returns tostep 518.

FIG. 6 is a flowchart illustrating exemplary steps involved in usinganother embodiment of the present invention. The steps involved in FIG.6 is generally same as those corresponding steps discussed above in FIG.5. In step 604, however, instead of determining the identity of the useras was done in step 504, the current day and time is determined. Thecurrent day and time is then used to generate the programming guide. Instep 608, for example, the programming guide may comprise a list ofprograms associated with favorite channels that are being broadcast orare about to be broadcast within three hours (e.g., see one of Tables 3and 4).

In describing representative embodiments of the present invention, thespecification may have presented the method and/or process of thepresent invention as a particular sequence of steps. However, to theextent that the method or process does not rely on the particular orderof steps set forth herein, the method or process should not be limitedto the particular sequence of steps described. As one of ordinary skillin the art would appreciate, other sequences of steps may be possible.Therefore, the particular order of exemplary steps set forth in thespecification should not be construed as limitations on the claims. Inaddition, the claims directed to the method and/or process of thepresent invention should not be limited to the performance of theirsteps in the order written, and one skilled in the art can readilyappreciate that the sequences may be varied and still remain within thespirit and scope of the present invention.

The foregoing disclosure of the preferred embodiments of the presentinvention has been presented for purposes of illustration anddescription. It is not intended to be exhaustive or to limit theinvention to the precise forms disclosed. Many variations andmodifications of the embodiments described herein will be obvious to oneof ordinary skill in the art in light of the above disclosure. The scopeof the invention is to be defined only by the claims appended hereto,and by their equivalents.

What we claim is:
 1. A broadcast signal receiver, comprising: a processor communicating with memory, the memory storing information causing the processor at least to: monitor tuner selections of a tuner over a period of time to determine favorite channel selections at times of days; create a viewing habits data table in the memory that stores each favorite channel selection, a corresponding day of week for each favorite channel selection, and a corresponding time of day for each favorite channel selection; when the viewing habits data table is undefined for a time of day, then query for genres associated with each favorite channel selection listed in the viewing habits data table; query for programs matching each genre associated with each favorite channel selection listed in the viewing habits data table; determine suggested channels broadcasting programs matching the genres associated with each favorite channel selection listed in the viewing habits data table; and suggest the suggested channels when the favorite channel does not exist for the time of day.
 2. The broadcast signal receiver of claim 1, further comprising information that causes the processor to generate a programming guide using only the viewing habits data table.
 3. The broadcast signal receiver of claim 1, further comprising information that causes the processor to automatically display the favorite channel selections.
 4. The broadcast signal receiver of claim 1, further comprising information that causes the processor to receive a request for a programming guide.
 5. The broadcast signal receiver of claim 1, further comprising information that causes the processor to retrieve the viewing habits data table from the memory.
 6. The broadcast signal receiver of claim 1, further comprising information that causes the processor to notify that a favorite program is about to start.
 7. The broadcast signal receiver of claim 1, further comprising information that causes the processor to automatically display the viewing habits data table when the broadcast signals receiver is electrically powered on.
 8. The broadcast signal receiver of claim 1, further comprising information that causes the processor to prompt for a selection from the viewing habits data table.
 9. The broadcast signal receiver of claim 8, further comprising information that causes the processor to display the viewing habits data table in a graphical user interface.
 10. A method, comprising: monitoring tuner selections of a tuner over a period of time to determine favorite channel selections at times of days; creating a viewing habits data table in memory that stores each favorite channel selection, a corresponding day of week for each favorite channel selection, and a corresponding time of day for each favorite channel selection; when a favorite channel does not exist in the viewing habits data table for a time of day, then querying for genres associated with each favorite channel selection listed in the viewing habits data table; querying for programs matching each genre associated with each favorite channel selection listed in the viewing habits data table; determining suggested channels that broadcast programs matching the genres associated with each favorite channel selection listed in the viewing habits data table; modifying the viewing habits data table to add a column that lists a genre associated with each favorite channel selection; and suggesting the suggested channels when the favorite channel does not exist for the time of day.
 11. The method of claim 10, further comprising receiving a request for a programming guide.
 12. The method of claim 10, further comprising automatically displaying the viewing habits data table.
 13. The method of claim 10, further comprising automatically displaying a listing of the favorite channels.
 14. The method of claim 13, further comprising prompting to select one of the favorite channel selections from the viewing habits data table.
 15. The method of claim 10, further comprising notifying that a favorite program is about to start.
 16. The method of 10, further comprising retrieving the viewing habits data table from the memory.
 17. A memory storing processor executable instructions for performing a method for generating programming guides, the method comprising: monitoring tuner selections of a tuner over a period of time to determine favorite channel selections at times of days; creating a viewing habits data table in memory that stores each favorite channel selection, a corresponding day of week for each favorite channel selection, and a corresponding time of day for each favorite channel selection; when a favorite channel does not exist in the viewing habits data table for a time of day, then querying for genres associated with each favorite channel selection listed in the viewing habits data table; querying for programs matching each genre associated with each favorite channel selection listed in the viewing habits data table; determining suggested channels that broadcast programs matching the genres associated with each favorite channel selection listed in the viewing habits data table; modifying the viewing habits data table to add a column that lists a genre associated with each favorite channel selection; and suggesting the suggested channels when the favorite channel does not exist for the time of day.
 18. The memory of claim 17, further comprising instructions for notifying that a favorite program is about to start. 